<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                template="/templates/mantenimiento.xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui">
    <ui:define name="title">
        Historial paciente
    </ui:define>    
    <ui:define name="datos">

        <h:panelGrid id="panelDatos">
            <h:form id="formDatos">
                <p:focus context="pngG"/>
                <h:panelGrid id="busqueda"  columns="6"   >
                    <f:verbatim/>
                    <h:outputLabel  value="BUSCAR:" />
                    <p:selectOneMenu  label="Buscar:" id="tipo" value="#{jsfReporteConsulta.tipoBusqueda}"   >                              
                        <f:selectItem itemLabel="Número carpeta" itemValue="1"/>
                        <f:selectItem itemLabel="Cédula" itemValue="2"/>
                        <f:selectItem itemLabel="Pasaporte" itemValue="3"/>
                    </p:selectOneMenu>
                    <h:panelGroup id="pngG" >
                        <p:inputText value="#{jsfReporteConsulta.parametroBusqueda}" size="12" maxlength="15" id="valorBusqueda" />
                    </h:panelGroup>
                    <p:commandButton value="Buscar" action="#{jsfReporteConsulta.buscarHistorial()}" process="busqueda" update=":panelDatos" title="Buscar historial">

                    </p:commandButton>

                </h:panelGrid>

                <p:panel header="Información paciente" rendered="#{not empty jsfReporteConsulta.cexHistoriaClinica.chcId}" >
                    <h:panelGrid  columns="8" id="paciente" >
                        <h:outputLabel  value="APELLDIDO PATERNO:" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcApellidoPaterno}" />

                        <h:outputLabel  value="APELLIDO MATERNO:" />
                        <h:outputText styleClass="letraTomate" value="#{jsfReporteConsulta.cexHistoriaClinica.chcApellidoMaterno}" />

                        <h:outputLabel  value="PRIMER NOMBRE" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcPrimerNombre}" />

                        <h:outputLabel  value="SEGUNDO NOMBRE" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcSegundoNombre}" />

                        <h:outputLabel  value="FECHA NACIMIENTO" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcFechaNacimiento}" >
                            <f:convertDateTime pattern="dd/MM/yyyy"/>
                        </h:outputText>

                        <h:outputLabel  value="EDAD" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcEdad}" />

                        <h:outputLabel  value="GÉNERO" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcGenero eq 1 ? 'HOMBRE':'MUJER'}" />

                        <h:outputLabel  value="PARROQUIA" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.admDivisionPolitica.nombre}" />


                        <h:outputLabel  value="BARRIO" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcBarrio}" />



                        <h:outputLabel  value="REFRENCIA" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.chcNombreReferencia}" />



                        <h:outputLabel  value="SEGURO" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.cexTipoSeguro.ctsNombre}" />



                        <h:outputLabel  value="NACIONALIDAD" />
                        <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.cexHistoriaClinica.cexNacionalidad.cnaNombre}" />





                    </h:panelGrid>
                </p:panel>
                <h:panelGrid columns="4" >

                </h:panelGrid>
                <h:panelGrid id="panelLista">
                    <p:dataTable id="listaSimple" value="#{jsfReporteConsulta.lista}" var="item"  
                                 rows="30" rendered="#{jsfReporteConsulta.lista.size()>0}"
                                 emptyMessage="No se encontraro registros"
                                 paginator="true"
                                 paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                 rowsPerPageTemplate="5,10,15" rowIndexVar="rowIndex" rowStyleClass="#{(rowIndex mod 2) eq 0 ? 'odd-row' : 'even-row'}">
                        <f:facet name="header">
                            <p:spacer width="300" height="10" />
                            <h:outputText value="Turnos agendados [#{jsfReporteConsulta.lista.size()}]" />
                            <p:spacer width="350" height="10" />
                            <h:commandLink immediate="true" >
                                <h:graphicImage url="#{resource['images:xls.jpg']}" height="22px" width="22px"  styleClass="pic" />
                                <p:dataExporter  type="xls" target="listaSimple" fileName="historial" />
                            </h:commandLink>

                            <h:commandLink immediate="true" >
                                <h:graphicImage url="#{resource['images:pdf.jpg']}" height="22px" width="22px"  styleClass="pic" />
                                <p:dataExporter type="pdf" target="listaSimple" fileName="historial"/>
                            </h:commandLink>
                        </f:facet>
                        <p:column  style="width: 15px" headerText="#" >
                            <h:outputText value="#{jsfReporteConsulta.lista.indexOf(item)+1}"/>
                        </p:column>
                        <p:column  style="width: 80px" headerText="Fecha" >
                            <h:outputText value="#{item.cexPreparacion.cexAgenda.cagFecha}">
                                <f:convertDateTime pattern="dd-MMMM-yy"/>
                            </h:outputText>
                        </p:column>
                        <p:column  style="width: 50px" headerText="Hora" >
                            <h:outputText value="#{item.cexPreparacion.cexAgenda.cagHora}">
                                <f:convertDateTime pattern="HH:mm"/>
                            </h:outputText>
                        </p:column>
                        <p:column style="width: 130px" headerText="Epecialidad" >
                            <h:outputText value="#{item.cexPreparacion.cexAgenda.cexHorariosDia.cexHorario.cexEspecialidadMedico.cexEspecialidad.cesNombre}"/>
                        </p:column>
                        <p:column headerText="Médico" >
                            <h:outputText  />
                            <h:commandLink value="#{item.cexPreparacion.cexAgenda.cexHorariosDia.cexHorario.cexEspecialidadMedico.admMedico.ameNombreFull}"
                                           action="#{jsfReporteConsulta.editarAction(item)}" title="Cargar atención" >
                                <f:ajax execute="@this" event="action" render=":panelDatos"/>
                            </h:commandLink>
                        </p:column>
                        <p:column style="width: 130px" headerText="Tipo" >
                            <h:outputText value="#{item.cexPreparacion.cexAgenda.cexHorariosDia.cexHorario.admTipoConsulta.atcNombre}"/>
                        </p:column>
                        <p:column style="width: 50px" headerText="frm 057" >
                            <h:outputText value="#{item.ccoRenova eq true ?'SI':'NO'}"/>
                        </p:column>
                        <p:column style="width: 80px" headerText="Estado" >
                            <h:outputText value="#{item.cexPreparacion.cexAgenda.cagEstado eq 1 ? 'PENDIENTE' :(item.cexPreparacion.cexAgenda.cagEstado eq 2 ? 'PREPARADO' :(item.cexPreparacion.cexAgenda.cagEstado eq 3 ? 'ATENDIDO' :'NINGUNO'))}"/>
                        </p:column>
                    </p:dataTable>
                </h:panelGrid>


                <h:panelGrid  id="datosHistorial" >
                    <p:fieldset legend="Signos vitales">
                        <h:panelGrid  columns="15" 
                                      columnClasses=",letraTomate,,,letraTomate,,,letraTomate,,,,,,letraTomate,,,letraTomate" >
                            <h:outputText value="Peso en Kg:" />
                            <h:outputText   value="#{jsfReporteConsulta.object.cexPreparacion.cprPeso}" />

                            <p:spacer width="20"  height="1"/>

                            <h:outputText value="Talla en mts:" />
                            <h:outputText  value="#{jsfReporteConsulta.object.cexPreparacion.cprTalla}"/>

                            <p:spacer width="20"  height="1" />

                            <h:outputText value="IMC:" />
                            <h:outputText  value="#{jsfReporteConsulta.object.cexPreparacion.cprImc}" />

                            <p:spacer width="20"  height="1" />

                            <h:outputText value="Tensión arterial acostado:" />
                            <h:panelGrid columnClasses=",letraTomate,,letraTomate" columns="4" >
                                <h:outputText value="max:" />
                                <h:outputText  value="#{jsfReporteConsulta.object.cexPreparacion.cprTensionMaxAcostado}" />
                                <h:outputText value="min:" />
                                <h:outputText value="#{jsfReporteConsulta.object.cexPreparacion.cprTensionMinAcostado}" />

                            </h:panelGrid>
                            <p:spacer width="20"  height="1" />

                            <h:outputText value="Tensión arterial sentado" />
                            <h:panelGrid columnClasses=",letraTomate,,letraTomate" columns="4" >
                                <h:outputText value="max:" />
                                <h:outputText  value="#{jsfReporteConsulta.object.cexPreparacion.cprTensionMaxSentado}" />
                                <h:outputText value="min:" />
                                <h:outputText value="#{jsfReporteConsulta.object.cexPreparacion.cprTensionMinSentado}" />

                            </h:panelGrid>


                            <f:verbatim/>

                            <h:outputText value="Frec/cardíaca:" />
                            <h:outputText  value="#{jsfReporteConsulta.object.cexPreparacion.cprFrecenciaCar}" />


                            <p:spacer width="20"  height="1" />


                            <h:outputText value="Frec/respiratoria:" />
                            <h:outputText  value="#{jsfReporteConsulta.object.cexPreparacion.cprFrecenciaRes}" />


                            <p:spacer width="20"  height="1" />


                            <h:outputText value="Temperatura:" />
                            <h:outputText  value="#{jsfReporteConsulta.object.cexPreparacion.cprTemperatura}" />

                            <p:spacer width="20"  height="1" />

                            <h:outputText value="Per/citura:" />
                            <h:outputText  styleClass="letraTomate" value="#{jsfReporteConsulta.object.cexPreparacion.cprPerimertoCintura}" />

                            <p:spacer width="20"  height="1" />

                            <h:outputText value="Per/pantorrilla:" />
                            <h:outputText  styleClass="letraTomate" value="#{jsfReporteConsulta.object.cexPreparacion.cprPerimetroPantollida}" />

                            <f:verbatim/>
                        </h:panelGrid>
                        <h:panelGrid id="observacionSigVit" columns="6" columnClasses=",letraTomate,,,letraTomate,,,letraTomate," >


                            <h:outputText value="Per/cadera:" />
                            <h:outputText  styleClass="letraTomate" value="#{jsfReporteConsulta.object.cexPreparacion.cprPerimetroCadera}" />

                            <p:spacer width="35"  height="1" />

                            <h:outputText value="Observaciones:" />
                            <h:outputText styleClass="letraTomate"  value="#{jsfReporteConsulta.object.cexPreparacion.cprObservaciones}" />  
                            <f:verbatim/>
                        </h:panelGrid>

                    </p:fieldset>


                    <p:fieldset legend="Datos de la consulta">
                        <h:panelGrid  columns="2" columnClasses=",letraTomate" >
                            <h:outputText value="Motivo de la consulta:" />
                            <h:outputText  value="#{jsfReporteConsulta.object.ccoMotivoConsulta}" />  
                            <h:outputText value="Enfermedad o problema actual:" />
                            <h:outputText value="#{jsfReporteConsulta.object.ccoEnfermedad}" />  
                            <h:outputText value="Evolución:" />
                            <h:outputText  value="#{jsfReporteConsulta.object.ccoEvolucion}" /> 
                            <h:outputText value="Observación:" />
                            <h:outputText value="#{jsfReporteConsulta.object.ccoObservacion}" /> 
                        </h:panelGrid>
                    </p:fieldset>


                    <p:fieldset toggleable="true" collapsed="true" legend="Antecedentes personales">
                        <p:dataGrid emptyMessage="no se encontro datos"  var="patV" columns="3"
                                    value="#{jsfReporteConsulta.object.cexAntecedentesPatologicosList}">
                            <p:panel rendered="#{patV.capId != null}" >
                                <h:panelGrid  columns="2"  >
                                    <h:outputText value="Patología:"/>
                                    <h:outputText styleClass="letraTomate" value="#{patV.cexPatologia.cptNombre}"/>
                                    <h:outputText value="Tipo"/>
                                    <h:outputText styleClass="letraTomate" value="#{patV.capTipo eq 1 ? 'CON PATOLOGÍA':'SIN PATOLOGÍA'}"/>
                                    <h:outputText value="Observación:"/>
                                    <h:outputText styleClass="letraTomate" value="#{patV.capObservacion}"/>
                                </h:panelGrid>
                            </p:panel>
                        </p:dataGrid>
                    </p:fieldset>

                    <p:fieldset toggleable="true" collapsed="true" legend="Antecedentes familiares">
                        <p:dataGrid var="patFamV" columns="3" emptyMessage="no se encontro datos" 
                                    value="#{jsfReporteConsulta.object.cexAntecedentesFamiliaresList}">
                            <p:panel rendered="#{patFamV.cafId != null}" >
                                <h:panelGrid columns="2"  >
                                    <h:outputText value="Patología:"/>
                                    <h:outputText styleClass="letraTomate" value="#{patFamV.cexPatologia.cptNombre}"/>
                                    <h:outputText value="Parentesco:"/>
                                    <h:outputText styleClass="letraTomate" value="#{patFamV.cexParentesco.cpaNombre}"/>
                                    <h:outputText value="Tipo"/>
                                    <h:outputText styleClass="letraTomate" value="#{patFamV.cptTipo eq 1 ? 'CON PATOLOGÍA':'SIN PATOLOGÍA'}"/>
                                    <h:outputText value="Observación:"/>
                                    <h:outputText styleClass="letraTomate" value="#{patFamV.cafObservacion}"/>
                                </h:panelGrid>
                            </p:panel>
                        </p:dataGrid>
                    </p:fieldset>


                    <p:fieldset toggleable="true" collapsed="true" legend="Revisión órganos">
                        <p:dataGrid var="revOrV" columns="3" emptyMessage="no se encontro datos"
                                    value="#{jsfReporteConsulta.object.cexRevisionOrganosList}">
                            <p:panel rendered="#{revOrV.croId != null}" >
                                <h:panelGrid columns="2"  >
                                    <h:outputText value="Sistema y órgano:"/>
                                    <h:outputText styleClass="letraTomate" value="#{revOrV.cexSistemasOrganos.csoNombre}"/>
                                    <h:outputText value="Tipo"/>
                                    <h:outputText styleClass="letraTomate" value="#{revOrV.croTipo eq 1 ? 'CON PATOLOGÍA':'SIN PATOLOGÍA'}"/>
                                    <h:outputText value="Observación:"/>
                                    <h:outputText styleClass="letraTomate" value="#{revOrV.croObservacion}"/>
                                </h:panelGrid>
                            </p:panel>
                        </p:dataGrid>
                    </p:fieldset>



                    <p:fieldset toggleable="true" collapsed="true" legend="Exámen físico regional">
                        <p:dataGrid var="exaFisV" columns="3" emptyMessage="no se encontro datos"
                                    value="#{jsfReporteConsulta.object.cexExamenFisicoList}">
                            <p:panel rendered="#{exaFisV.cfcId != null}" >
                                <h:panelGrid  columns="2"  >
                                    <h:outputText value="físico regional:"/>
                                    <h:outputText styleClass="letraTomate" value="#{exaFisV.cexFisicoRegional.cefNombre}"/>
                                    <h:outputText value="Tipo"/>
                                    <h:outputText styleClass="letraTomate" value="#{exaFisV.cfcTipo eq 1 ? 'CON PATOLOGÍA':'SIN PATOLOGÍA'}"/>
                                    <h:outputText value="Observación:"/>
                                    <h:outputText styleClass="letraTomate" value="#{exaFisV.cfcObservacion}"/>
                                </h:panelGrid>
                            </p:panel>
                        </p:dataGrid>
                    </p:fieldset>


                    <p:fieldset toggleable="true" collapsed="true" legend="Diagnostico">
                        <p:dataGrid var="diagV" columns="3" emptyMessage="no se encontro datos"
                                    value="#{jsfReporteConsulta.object.cexDiagnosticoConsultaList}">
                            <p:panel rendered="#{diagV.dicId != null}">
                                <h:panelGrid columns="2"  >
                                    <h:outputText value="Diagnostico:"/>
                                    <h:outputText styleClass="letraTomate" value="[#{diagV.cexDiagnostico.cdiCodigo}] #{diagV.cexDiagnostico.cdiNombre}"/>
                                    <h:outputText value="Prevención"/>
                                    <h:outputText styleClass="letraTomate" value="#{diagV.dicPrevencion eq 1 ? 'PRIMERA':(diagV.dicPrevencion eq 2 ? 'SUBSECUENTE':'')}"/>
                                    <h:outputText value="Morbilidad"/>
                                    <h:outputText styleClass="letraTomate" value="#{diagV.dicMorbilidad eq 1 ? 'PRIMERA':(diagV.dicMorbilidad eq 2 ? 'SUBSECUENTE':'')}"/>
                                    <h:outputText value="Tipo"/>
                                    <h:outputText styleClass="letraTomate" value="#{diagV.cexCondicionDiagnostico.ccdNombre}"/>
                                    <h:outputText value="Observación:"/>
                                    <h:outputText styleClass="letraTomate" value="#{diagV.dicObservacion}"/>
                                </h:panelGrid>
                            </p:panel>
                        </p:dataGrid>
                    </p:fieldset>

                    <p:fieldset toggleable="true" collapsed="true" legend="Procedimientos">
                        <p:dataGrid var="procV" columns="3" emptyMessage="no se encontro datos"
                                    value="#{jsfReporteConsulta.object.cexTratamientoConsultaList}">
                            <p:panel rendered="#{procV.cptId != null}">
                                <h:panelGrid columns="2"  >
                                    <h:outputText value="Procedimiento:"/>
                                    <h:outputText styleClass="letraTomate" value="#{procV.cexProcedimiento.cprNombre}"/>
                                    <h:outputText value="Observación:"/>
                                    <h:outputText styleClass="letraTomate" value="#{procV.cptObservacion}"/>
                                </h:panelGrid>
                            </p:panel>
                        </p:dataGrid>
                    </p:fieldset>

                    <p:fieldset toggleable="true" collapsed="true" legend="Escalas geriatricas">
                        <p:dataGrid  var="car" value="#{jsfReporteConsulta.listaGeriatricoHistorial}" columns="2" 
                                     id="pnlGerHistorial"  >
                            <h:outputText styleClass="letraTomate"  value="#{car.csgNombre}" />                   
                            <h:panelGrid  columns="1" >
                                <p:dataGrid var="varCs" value="#{car.cexSindromeGeriatricoList}" columns="1" 
                                            id="listaConsultaGeriatrica"                                       >

                                    <h:panelGrid rendered="#{not empty varCs.valorRespuesta}"   columns="5" >
                                        <h:outputText  value="#{varCs.valorRespuesta}" />
                                        <p:spacer width="5"  height="1"/>
                                        <h:outputText  value=" = " />
                                        <p:spacer width="5"  height="1"/>
                                        <h:outputLabel  value="#{varCs.csgNombre}"   />
                                    </h:panelGrid>
                                </p:dataGrid>
                                <h:panelGrid   columns="5" >
                                    <h:outputText  value="TOTAL" />
                                    <p:spacer width="10"  height="1"/>
                                    <h:outputText  value=" = " />
                                    <p:spacer width="10"  height="1"/>
                                    <h:outputLabel styleClass="letraTomate"  value="#{car.total}"   />
                                </h:panelGrid>
                            </h:panelGrid>
                        </p:dataGrid>
                    </p:fieldset>


                    <h:panelGrid columnClasses="alignTop,alignTop,alignTop" columns="3" >
                        <p:fieldset legend="Consulta">
                            <h:panelGrid  columns="2" columnClasses=",letraTomate," >
                                <h:outputText value="Periodicidad:" />
                                <h:outputText styleClass="letraTomate" value="#{jsfReporteConsulta.object.ccoPeriodicidad eq 1 ? 'REFERENCIA':(jsfReporteConsulta.object.ccoPeriodicidad eq 2 ? 'CONTRAREFERENCIA':'NINGUNA')}"/>
                                <h:outputText value="Interconsulta:" />
                                <h:outputText styleClass="letraTomate" value="#{jsfReporteConsulta.object.ccoTipoConsulta eq 1 ? 'INTERCONSULTA SOLICITADA':(jsfReporteConsulta.object.ccoTipoConsulta eq 2 ? 'INTERCONSULTA RECIBIDA':'NINGUNA')}"/>
                            </h:panelGrid>
                        </p:fieldset>

                    </h:panelGrid>
                </h:panelGrid>

                <p:growl id="growl"  showDetail="true" life="6500" />  
            </h:form>
        </h:panelGrid>

    </ui:define>

</ui:composition>
